﻿using System;
using Microsoft.Xna.Framework;

namespace CellarDoor.Gui
{
    public class UiMouseProxy
    {
        /// <summary>
        /// Gets and sets a value indicating whether the left mouse button is just pressed
        /// </summary>
        public bool ButtonLeftJustPressed { get; set; }

        /// <summary>
        /// Gets and sets a value indicating whether the left mouse button is currently pressed
        /// </summary>
        public bool ButtonLeftPressed { get; set; }

        /// <summary>
        /// Gets and sets a value indicating whether the left mouse button has been just released
        /// </summary>
        public bool ButtonLeftJustReleased { get; set; }

        /// <summary>
        /// Gets and sets a value indicating whether the left mouse button is just pressed
        /// </summary>
        public bool ButtonRightJustPressed { get; set; }

        /// <summary>
        /// Gets and sets a value indicating whether the left mouse button is currently pressed
        /// </summary>
        public bool ButtonRightPressed { get; set; }

        /// <summary>
        /// Gets and sets a value indicating whether the left mouse button has been just released
        /// </summary>
        public bool ButtonRightJustReleased { get; set; }

        /// <summary>
        /// Gets and sets the mouse position in last frame
        /// </summary>
        public Point PositionOld { get; set; }

        /// <summary>
        /// Gets and sets the mouse position in curent frame
        /// </summary>
        public Point PositionNew { get; set; }

        /// <summary>
        /// Gets and sets the mouse move vector
        /// </summary>
        public Point PositionDelta { get; set; }

        /// <summary>
        /// Gets and sets the mouse wheel spin direction
        /// </summary>
        public int WheelDirection { get; set; }
    }
}
